Class BLEAdvertData
Description
A class used for managing BLE advertising data.
Syntax
class BLEAdvertData
Members
Public Constructors |
|
---|---|
BLEAdvertData::BLEAdvertData |
Constructs a BLEAdvertData object |
Public Methods |
|
---|---|
BLEAdvertData::clear |
Clear all advertising data |
BLEAdvertData::addData |
Add binary advertising data |
BLEAdvertData::addFlags |
Add flags to advertising data |
B LEAdvertData::addPartialServices |
Add partial services to advertising data |
BL EAdvertData::addCompleteServices |
Add complete services to advertising data |
BLEAdvertData::addAppearance |
Add device appearance to advertising data |
BLEAdvertData::addShortName |
Add short device name to advertising data |
BLEAdvertData::addCompleteName |
Add complete device name to advertising data |
BLEAdvertData::parseScanInfo |
Parse advertising data received from a scan |
BLEAdvertData::hasFlags |
Check if received data includes advertising flags |
BLEAdvertData::hasUUID |
Check if received data includes UUIDs |
BLEAdvertData::hasName |
Check if received data includes device name |
BLEAdvertData::hasManufacturer |
Check if received data includes manufacturer data |
BLEAdvertData::getAdvType |
Get advertising type of received data |
BLEAdvertData::getAddrType |
Get Bluetooth address type of received data |
BLEAdvertData::getAddr |
Get Bluetooth address of received data |
BLEAdvertData::getRSSI |
Get RSSI of received data |
BLEAdvertData::getFlags |
Get advertising flags of received data |
BLEAdvertData::getServiceCount |
Get number of advertised services in received data |
BLEAdvertData::getServiceList |
Get array of advertised services in received data |
BLEAdvertData::getName |
Get advertised device name in received data |
BLEAdvertData::getTxPower |
Get advertised transmission power in received data |
BLEAdvertData::getAppearance |
Get advertised device appearance in received data |
BLEAdvertData::getManufacturer |
Get advertised manufacturer in received data |
BLEAdver tData::getManufacturerDataLength |
Get length of manufacturer data in received data |
BL EAdvertData::getManufacturerData |
Get advertised manufacturer data in received data |
- BLEAdvertData::BLEAdvertData
Description
Constructs a BLEAdvertData object.
Syntax
BLEAdvertData::BLEAdvertData(void);
Parameters
The function requires no input parameter.
Returns
The function returns nothing.
Example Code
NA
Notes and Warnings
This class is used for managing BLE advertising data for two primary uses. First is to assemble advertising data for broadcasting as advertising packets. Second is to process and split up the advertising data received from a scan into separate types.
- BLEAdvertData::clear
Description
Clear all advertising data currently saved in class object.
Syntax
void clear(void);
Parameters
The function requires no input parameter.
Returns
The function returns nothing.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::addData
Description
Add binary advertising data.
Syntax
void addData(const uint8_t * data, uint8_t size);
Parameters
data
: pointer to array containing desired advertising data.
size
: number of bytes in array.
Returns
The function returns nothing.
Example Code
NA
Notes and Warnings
This function is provided for flexibility in adding BLE advertising data. Other functions should be used for adding advertising data if possible, as this function does not perform any checks on the validity of the data.
- BLEAdvertData::addFlags
Description
Add flags to advertising data.
Syntax
uint8_t addFlags(uint8_t flags);
Parameters
flags: desired flags to add to advertising data. Valid values: – GAP_ADTYPE_FLAGS_LIMITED – GAP_ADTYPE_FLAGS_GENERAL – GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED – GAP_ADTYPE_FLAGS_SIMULTANEOUS_LE_BREDR_CONTROLLER – GAP_ADTYPE_FLAGS_SIMULTANEOUS_LE_BREDR_HOST
Returns
Current total size of advertising data.
Example Code
Example: BLEBatteryService
Notes and Warnings
NA
BLEAdvertData::addPartialServices
Description
Add partial list of service UUIDs to advertising data.
Syntax
uint8_t addPartialServices(BLEUUID uuid);
Parameters
uuid
: the desired UUID contained in BLEUUID class object.
Returns
Current total size of advertising data.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::addCompleteServices
Description
Add complete list of service UUIDs to advertising data.
Syntax
uint8_t addCompleteServices(BLEUUID uuid);
uint8_t addCompleteServices(uint8_t uuidBitLength);
Parameters
uuid
: the desired UUID contained in BLEUUID class object.
uuidBitLength
: UUID bit length for which a blank entry is to be added.
Valid values: 16, 32, 128.
Returns
Current total size of advertising data.
Example Code
Example: BLEBatteryService
Notes and Warnings
uuidBitLength is used when it is desired to add a blank entry to the advertisement data, used to indicate that no services with UUIDs of a certain length are available.
- BLEAdvertData::addAppearance
Description
Add device appearance to advertising data.
Syntax
uint8_t addAppearance(uint16_t appearance);
Parameters
appearance
: the desired device appearance.
Returns
Current total size of advertising data.
Example Code
NA
Notes and Warnings
Refer to Bluetooth specifications for a full list of device appearance values.
- BLEAdvertData::addShortName
Description
Add shortened device name to advertising data.
Syntax
uint8_t addShortName(const char*str);
Parameters
str
: character string containing desired device name.
Returns
Current total size of advertising data.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::addCompleteName
Description
Add complete device name to advertising data.
Syntax
uint8_t addCompleteName(const char * str);
Parameters
str
: character string containing desired device name.
Returns
Current total size of advertising data.
Example Code
Example: BLEBatteryService
Notes and Warnings
NA
- BLEAdvertData::parseScanInfo
Description
Parse advertising data received from a scan.
Syntax
void parseScanInfo(T_LE_CB_DATA*p_data);
Parameters
p_data
: pointer to advertising data received from a Bluetooth scan.
Returns
The function returns nothing.
Example Code
Example: BLEBatteryClient
Notes and Warnings
Advertising data fields of parsed receive data can be access using member functions starting with “has” and “get”.
- BLEAdvertData::hasFlags
Description
Check if received data includes advertising flags.
Syntax
bool hasFlags(void);
Parameters
The function requires no input parameter.
Returns
True if flags are present in received advertising data.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::hasUUID
Description
Check if received data includes service UUIDs.
Syntax
bool hasUUID(void);
Parameters
The function requires no input parameter.
Returns
True if service UUIDs are present in received advertising data.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::hasName
Description
Check if received data includes device name.
Syntax
bool hasName(void);
Parameters
The function requires no input parameter.
Returns
True if device name is present in received advertising data.
Example Code
Example: BLEBatteryClient
Notes and Warnings NA
- BLEAdvertData::hasManufacturer
Description
Check if received data includes manufacturer specific data.
Syntax
bool hasManufacturer(void);
Parameters
The function requires no input parameter.
Returns
True if manufacturer specific data is present in received advertising data.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::getAdvType
Description
Get advertising type of received data.
Syntax
T_GAP_ADV_EVT_TYPE getAdvType(void);
Parameters
The function requires no input parameter.
Returns
Advertising type of received advertising data.
Example Code
NA
Notes and Warnings
Possible types: – GAP_ADV_EVT_TYPE_UNDIRECTED – GAP_ADV_EVT_TYPE_DIRECTED – GAP_ADV_EVT_TYPE_SCANNABLE – GAP_ADV_EVT_TYPE_NON_CONNECTABEL – GAP_ADV_EVT_TYPE_SCAN_RSP
- BLEAdvertData::getAddrType
Description
Get Bluetooth address type of received data.
Syntax
T_GAP_REMOTE_ADDR_TYPE getAddrType(void);
Parameters
The function requires no input parameter.
Returns
Bluetooth address type of received data.
Example Code
NA
Notes and Warnings
Possible types:
– GAP_REMOTE_ADDR_LE_PUBLIC
– GAP_REMOTE_ADDR_LE_RANDOM
- BLEAdvertData::getRSSI
Description
Get received signal strength indicator (RSSI) of received data.
Syntax
Int8_t getRSSI(void);
Parameters
The function requires no input parameter.
Returns
Received signal strength.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::getFlags
Description
Get advertising flags of received data.
Syntax
uint8_t getFlags(void);
Parameters
The function requires no input parameter.
Returns
Advertising flags present in received advertising data, expressed as a single byte.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::getServiceCount
Description
Get number of advertised services in received data.
Syntax
uint8_t getServiceCount(void);
Parameters
The function requires no input parameter.
Returns
Number of advertised service UUIDs in received data.
Example Code
Example: BLEBatteryClient
Notes and Warnings
NA
- BLEAdvertData::getServiceList
Description
Get list of advertised service UUIDs in received data.
Syntax
BLEUUID * getServiceList(void);
Parameters
The function requires no input parameter.
Returns
Pointer to a BLEUUID array containing all advertised service UUIDs.
Example Code
Example: BLEBatteryClient
Notes and Warnings
NA
- BLEAdvertData::getName
Description
Get advertised device name in received data.
Syntax
String getName(void);
Parameters
The function requires no input parameter.
Returns
Advertised device name contained in a String class object.
Example Code
Example: BLEBatteryClient
Notes and Warnings
NA
- BLEAdvertData::getTxPower
Description
Get advertised transmission power in received data.
Syntax
int8_t getTxPower(void);
Parameters
The function requires no input parameter.
Returns
Advertised transmission power.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::getAppearance
Description
Get advertised device appearance in received data.
Syntax
uint16_t getAppearance(void);
Parameters
The function requires no input parameter.
Returns
Advertised device appearance.
Example Code
NA
Notes and Warnings
Refer to Bluetooth specifications for full list of device appearance values.
BLEAdvertData::getManufacturer
Description
Get advertised manufacturer in received data.
Syntax
uint16_t getManufacturer(void);
Parameters
The function requires no input parameter.
Returns
Advertised manufacturer.
Example Code
NA
Notes and Warnings
Refer to Bluetooth specifications for full list of manufacturer codes.
- BLEAdvertData::getManufacturerDataLength
Description
Get length of manufacturer data in received data.
Syntax
uint8_t getManufacturerDataLength(void);
Parameters
The function requires no input parameter.
Returns
Number of bytes of manufacturer data present in received advertising data.
Example Code
NA
Notes and Warnings
NA
- BLEAdvertData::getManufacturerData
Description
Get manufacturer data in received data.
Syntax
uint8_t * getManufacturerData(void);
Parameters
The function requires no input parameter.
Returns
Pointer to array containing manufacturer data.
Example Code
NA
Notes and Warnings
NA